package com.atguigu.gmall.product.mapper;

import com.atguigu.gmall.model.product.SpuSaleAttr;
import com.atguigu.gmall.model.product.SpuSaleAttrValue;
import com.atguigu.gmall.product.bean.SkuAllSaleValue;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author dyqstart
 * @create 2021-08-05-19:58
 * @since 1.0.0
 */
public interface  SpuSaleAttrMapper extends BaseMapper<SpuSaleAttr> {

    List<SpuSaleAttr> getSpuAttrAndValue(Long spuId);


    /**
     * 按照当前skuId查出当前skuId所属的spu的所有销售属性值
     * 并标识出哪个是这个sku的销售属性
     * @param skuId
     * @return
     */
    List<SpuSaleAttrValue> getSpuSaleAttrValueList(@Param("skuId") Long skuId);


    /**
     * 根据skuId返回销售属性的值
     *
     * @param skuId
     * @return
     */
    List<SpuSaleAttr> getSpuSaleAttrWithAllValueAndSkuCheck(@Param("skuId") Long skuId);

    /**
     * 根据spuId查到他下面所有sku对应的属性信息
     * 方便切换
     * @param spuId
     * @return
     */
     List<SkuAllSaleValue> getSkuAllSaleValue(Long spuId);
}
